As the value and use of information continues to increase, individuals and businesses seek additional ways to process and store information. One option available to users is information handling systems. An information handling system generally processes, compiles, stores, and/or communicates information or data for business, personal, or other purposes thereby allowing users to take advantage of the value of the information. Because technology and information handling needs and requirements vary between different users or applications, information handling systems may also vary regarding what information is handled, how the information is handled, how much information is processed, stored, or communicated, and how quickly and efficiently the information may be processed, stored, or communicated. The variations in information handling systems allow for information handling systems to be general or configured for a specific user or specific use such as financial transaction processing, airline reservations, enterprise data storage, or global communications. In addition, information handling systems may include a variety of hardware and software components that may be configured to process, store, and communicate information and may include one or more computer systems, data storage systems, and networking systems.
Information handling systems are increasingly using persistent memory technologies such as Non-Volatile Dual In-line Memory Modules (NVDIMMs). An NVDIMM is a memory module that may retain data even when electrical power is removed either from an unexpected power loss, system crash or from a normal system shutdown. One implementation of NVDIMM that is often preferred is that of NVDIMM-N. An NVDIMM-N may include a traditional dynamic random access memory (DRAM) which may store data during normal operation when electrical power is available from a power supply unit and a flash memory to back up data present in the DRAM when a loss of electrical power from the power supply unit occurs. A battery, capacitor, or other energy storage device either internal or external to the NVDIMM-N may supply electrical energy for a “save” operation to transfer data from the DRAM to the flash memory in response to a power loss event from the power supply unit. Accordingly, the NVDIMM-N may expose only its volatile memory to a host system, thus achieving DRAM-like latencies for memory operations while still providing for data persistence in the event of power loss through the save operation.
Existing NVDIMM-N memory specifications provide for a one-to-one mapping of volatile memory to non-volatile memory during save and restore operations, and in the event of a power loss, an entire volatile space of an NVDIMM-N is copied to non-volatile memory in save operation. Such approaches have many inefficiencies. For example, in some instances, such approaches result in wasted use of resources (e.g., processing resources, battery life of battery powering save operations) in performing save operations on data not requiring persistency. As another example, because save operations cause wear of non-volatile memory media, such backing up of unnecessary data may lead to reduced device life. Another drawback of existing approaches is that they treat all data in the persistent memory as having equal priority, when in fact some data may be more critical, requiring greater persistency.